home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs03.d81 / datafile.sfx / dfreport (.txt) < prev    next >
Commodore BASIC  |  1990-02-12  |  7KB  |  211 lines

  1. 500 REM DATAFILE 2.9 SUBPROGRAM DFREPORT BY M. KONSHAK
  2. 502 REM-FOR 1525,MPS801,GEMINI10X,OKIDATA92A,EPSONRX80 AND OTHERS
  3. 504 OPEN4,4:IFPW=0THENPW=80
  4. 506 GOTO614
  5. 508 REM LOAD SUBPROGRAMS
  6. 510 PRINT"[147]       LOADING MAIN PROGRAM"
  7. 512 LOAD"DATAFILE",8
  8. 514 PRINT"[147]  LOADING MAILING LABEL SUBPROGRAM"
  9. 515 LOAD"DFMAIL",8
  10. 516 PRINT"[147]  LOADING CALCULATIONS SUBPROGRAM"
  11. 517 LOAD"DFCALC",8
  12. 518 REM QUIT ROUTINE
  13. 520 PRINT"[147]QUITTING NOW WILL ERASE CURRENT DATA"
  14. 522 PRINT"ARE YOU SURE YOU WANT TO QUIT?":PRINT" Y[146] OR N[146] ?
  15. 524 [161]A$:[139]A$[178]""[167]524
  16. 526 [139]A$[178]"N"[167]614
  17. 528 [139]A$[178]"Y"[167]532
  18. 530 [137]524
  19. 532 [160]4:[153]"LOADSUBPROGRAM TERMINATED"
  20. 534 [153]"DATAFILEWAIT BY MIKE KONSHAK (C)1983":[128]
  21. 536 [143] SEARCH ROUTINES MENU
  22. 538 A0[178]0:[153]"LOAD            PRINT OPTIONS MENU        "
  23. 540 [153]"    AWAITLL RECORDS IN FILE
  24. 542 PRINT"    S[146]ELECT INDIVIDUAL RECORD
  25. 544 [153]"    FWAITIND RECORDS WITH COMMON FIELDS
  26. 546 PRINT"    E[146]XIT TO MAIN MENU
  27. 548 [153]"POSITION PAPER IN PRINTER AT TOP OF PAGE"
  28. 550 [153]"PRINTER MAY STOP DURING PRINTING IF THE"
  29. 552 [153]"COMPUTER NEEDS TO REALLOCATE MEMORY."
  30. 554 [153]"       PRESS THE APPROPRIATE KEY       "
  31. 556 [161]C$:[139]C$[178]""[167]556
  32. 558 [139]C$[178]"A"[167]606
  33. 560 [139]C$[178]"S"[167]FL[178]0:[137]570
  34. 562 [139]C$[178]"F"[167]580
  35. 564 [139]C$[178]"E"[167]614
  36. 566 [137]556
  37. 568 [143] SELECT ONE RECORD
  38. 570 [133]"LOADPRINT WHICH RECORD (0WAIT TO EXIT)";I$:I[178][197](I$):[139]I[178]0[167]890
  39. 572 [139]I[177]X[167][153]"NO SUCH RECORD EXISTS, TRY AGAINONONON":[137]570
  40. 574 [139]K[178]2[175]FL[178]0[167][141]810:[141]824:[141]842:[141]888:FL[178]1:[137]570
  41. 575 [139]K[178]2[175]FL[178]1[167][141]842:[141]888:[137]570
  42. 576 [141]798:[152]4,B1$:[137]538
  43. 578 [143] FIND RECORD (SEARCH)
  44. 580 [153]"LOAD     FIND RECORDS WITH COMMON ITEMS    "
  45. 582 [129]N[178]1[164]F:[153]" ";N;"WAIT";F$(N):[130]N
  46. 584 [133]"WHICH FIELD IS TO BE SEARCHED";SF
  47. 586 [139]SF[179]0[176]SF[177]F[167][153]"ONONON":[137]584
  48. 588 [153]"ENTER COMMON ITEMWAIT":[153]"(THE ENTIRE STRING IS NOT REQUIRED)"
  49. 590 [153]"";F$(SF);"WAIT ";:[133]T$
  50. 592 [139]K[178]2[167][141]810:[141]824
  51. 594 [129]I[178]1[164]X
  52. 596 [153]"SEARCHING RECORD";I;"ONON"
  53. 598 [139]T$[178][200](REC$(K%(I),SF),[195](T$))[167][145]K[141]798,842:[141]888
  54. 600 [130]I
  55. 602 [137]890
  56. 604 [143] PRINT ALL RECORDS
  57. 606 [153]"LOAD PRINTING HEADING":[139]K[178]2[167][141]810:[141]824
  58. 608 [129]I[178]1[164]X:[153]"ON PRINTING RECORD #";I:[145]K[141]798,842:[141]888:[130]I
  59. 610 [137]890
  60. 612 [143] PRINT RECORDS MENU
  61. 614 [153]"LOAD         REPORT PRINTOUT MENU          "
  62. 616 [153]"      LWAITIST RECORDS UNFORMATTED"
  63. 618 [153]"      PWAITRE-DEFINED FORMAT OR"
  64. 620 [153]"      DWAITEFINE NEW FORMAT"
  65. 622 [153]"      EWAITXIT TO MAIN PROGRAM OR"
  66. 624 [153]"      MWAITAILING LABEL PROGRAM"
  67. 625 [143] ?"      CWAITALCULATED REPORTS PROGRAM"
  68. 626 [153]"      QWAITUIT PROGRAM"
  69. 628 [153]"       PRESS THE APPROPRIATE KEY       "
  70. 630 [161]C$:[139]C$[178]""[167]630
  71. 632 [139]C$[178]"L"[167]K[178]1:[137]538
  72. 634 [139]C$[178]"P"[167]K[178]2:[137]766
  73. 636 [139]C$[178]"E"[167][160]4:[137]510
  74. 638 [139]C$[178]"M"[167][160]4:[137]514
  75. 639 [143] IFC$="C"THENCLOSE4:GOTO516
  76. 640 [139]C$[178]"D"[167]K[178]2:[137]646
  77. 642 [139]C$[178]"Q"[167]520
  78. 644 [137]630
  79. 646 [153]"LOADREPORT SIZEWAIT UP TO 136 CHARACTERS WIDE."
  80. 648 [153]"PRINTER MUST BE INITIALIZED FOR WIDTHS"
  81. 650 [153]"GREATER THAN 80 CHARACTERS. CHECK YOUR"
  82. 652 [153]"PRINTER MANUAL TO HOW TO PRINT 136 CHARACTERS"
  83. 654 [153]"NUMBER OF CHARACTERS?":[153]"?   CMDCMDCMD";PW:[133]"ON";PW
  84. 656 [139]PW[177]136[167]654
  85. 658 [153]"LOADTITLE FORMATWAIT UP TO 4 TITLE LINES OF"
  86. 660 [153]"INFORMATION AT THE TOP OF THE FORM."
  87. 662 [153]"NUMBER OF LINES?":[153]"?   CMDCMDCMD";NL:[133]"ON";NL:[139]NL[177]4[167]662
  88. 664 [129]J[178]1[164]NL:[153]"TITLE #";J:[153]"? >  CMDCMDCMD";TT$(J)
  89. 666 [139][195](TT$(J))[177]37[167][153]"ON";
  90. 668 [133]"ON";TT$(J):[139]TT$(J)[178]""[167]TT$(J)[178]">"
  91. 670 [130]J
  92. 672 [153]"LOADCOLUMN FORMATWAIT UP TO 8 COLUMNS WITH 2"
  93. 673 [153]"SPACES BETWEEN COLUMNS"
  94. 674 [153]"NUMBER OF COLUMNS?":[153]"?   CMDCMDCMD";NC:[133]"ON";NC:[139]NC[177]8[167]674
  95. 676 [129]J[178]1[164]NC:[153]"POSITION OF COLUMN #";J:[153]"?   CMDCMDCMD";PC(J)
  96. 678 [133]"ON";PC(J):[130]J
  97. 680 [153]"LOADHEADING FORMATWAIT COLUMN HEADINGS CANNOT"
  98. 682 [153]"EXCEED WIDTH OF COLUMNS:"
  99. 684 [129]J[178]1[164]NC:[153]"COLUMN";J;" HEADING";
  100. 686 [139]J[178]NC[167][153]80[171]PC(J);:[137]690
  101. 688 [153]PC(J[170]1)[171]2[171]PC(J);
  102. 690 [153]" CHARACTERS WIDE"
  103. 692 [153]"? >  CMDCMDCMD";HC$(J):[133]"ON";HC$(J):[139]HC$(J)[178]""[167]HC$(J)[178]">"
  104. 694 [130]J
  105. 696 [153]"LOADCHOOSE WHICH FIELDS GO UNDER THE COLUMNS"
  106. 698 [153]"ENTER 0WAIT IF ADDITIONAL FIELDS ARE":[153]"NOT DESIRED."
  107. 700 [129]N[178]1[164]F:[153]"";N;"WAIT ";F$(N):[130]N
  108. 702 [129]J[178]1[164]NC:[153]"";[163]25)"COLUMN";J;""
  109. 704 [129]L[178]1[164]3:[153][163]25)"ONFIELD";L;" 0 CMDCMD";ML$(J,L)
  110. 706 [153][163]32);"ON";:[133]ML$(J,L):[130]L:[130]J
  111. 708 [153]"LOADDO YOU WISH TO SUM THE DATA IN COLUMN"[170][196](NC)[170]"?"
  112. 709 [153]"THIS COLUMN MUST ONLY BE FORMATTED WITH"
  113. 710 [153]"ONLY ONE FIELD. ENTER 1WAIT (YES) OR 0WAIT (NO)"
  114. 711 [153]"?";Z:[133]"ON";Z
  115. 712 [153]"LOADDO YOU WISH TO REVIEW YOUR FORMAT AND/OR"
  116. 714 [153]"MAKE CORRECTIONS?  PRESS YWAIT OR NWAIT"
  117. 716 [161]A$:[139]A$[178]""[167]716
  118. 718 [139]A$[178]"Y"[167]646
  119. 720 [139]A$[178]"N"[167]726
  120. 722 [137]716
  121. 724 [143] SAVE REPORT FORMAT
  122. 726 [153]" SAVE FORMATWAIT?            YWAIT OR NWAIT"
  123. 728 [161]A$:[139]A$[178]""[167]728
  124. 730 [139]A$[178]"N"[167]538
  125. 732 [139]A$[178]"Y"[167]736
  126. 734 [137]728
  127. 736 [153]"SAVE UNDER WHAT FILE NAME?"
  128. 738 [153]"  ";NF$:[133]"ON";NF$:[139]NF$[178]""[167]614
  129. 740 [159]15,8,15:[152]15,"S0:RP] "[170]NF$:[141]876:[139]ET[178]8[167]614
  130. 742 [159]5,8,5,"0:RP] "[170]NF$[170]",S,W":[141]876:[139]ET[178]8[167]614
  131. 744 [152]5,PW;CR$;NL;CR$;NC:[141]876:[139]ET[178]8[167]614
  132. 746 [129]J[178]1[164]NL
  133. 748 [152]5,TT$(J):[141]876:[139]ET[178]8[167]614
  134. 750 [130]J
  135. 752 [129]I[178]1[164]NC
  136. 754 [152]5,PC(I);CR$;HC$(I):[141]876:[139]ET[178]8[167]614
  137. 756 [129]N[178]1[164]3
  138. 758 [152]5,ML$(I,N):[141]876:[139]ET[178]8[167]614
  139. 760 [130]N:[130]I:[152]5,[196](Z);CR$;E$:[141]876:[139]ET[178]8[167]614
  140. 762 [160]5:[160]15:[137]538
  141. 764 [143] LOAD REPORT FORMAT
  142. 766 [153]"LOAD FORMAT FROM WHAT FILE?"
  143. 768 [153]"  ";NF$:[133]"ON";NF$:[139]NF$[178]""[167]614
  144. 770 [159]15,8,15:[159]5,8,5,"0:RP] "[170]NF$[170]",S,R":[141]876:[139]ET[178]8[167]614
  145. 771 [139]EN[178]62[167][141]878:[137]614
  146. 772 [132]5,PW,NL,NC:[141]876:[139]ET[178]8[167]614
  147. 774 [129]J[178]1[164]NL
  148. 776 [132]5,TT$(J):[141]876:[139]ET[178]8[167]614
  149. 778 [130]J
  150. 780 [129]I[178]1[164]NC
  151. 782 [132]5,PC(I),HC$(I):[141]876:[139]ET[178]8[167]614
  152. 784 [129]N[178]1[164]3
  153. 786 [132]5,ML$(I,N):[141]876:[139]ET[178]8[167]614
  154. 788 [130]N:[130]I:[132]5,A1$:Z[178][197](A1$)
  155. 790 S[178]ST:[139]S[179][177]0[167]794
  156. 792 [132]5,E$
  157. 794 [160]5:[160]15:[137]712
  158. 796 [143] PRINT NONFORMATTED LISTING
  159. 798 [152]4,"[ RECORD #";I;"   ]";:[129]J[178]1[164]62:[152]4,"-";:[130]J:[152]4,B1$
  160. 800 [129]N[178]1[164]F
  161. 802 [152]4,F$(N);:[129]J[178]1[164]20[171][195](F$(N)):[152]4,".";:[130]J
  162. 804 [152]4,REC$(K%(I),N)
  163. 806 [130]N:[152]4,B1$:[142]
  164. 808 [143] PRINT REPORT
  165. 810 PG[178]0:S$[178]"":[129]J[178]1[164]PW:S$[178]S$[170]B$:[130]J
  166. 812 [129]J[178]1[164]NL:[139]TT$(J)[179][177]">"[167][141]818
  167. 814 [130]J:[142]
  168. 816 [143] CENTER TITLE
  169. 818 B[178][181]((PW[171][195](TT$(J)))[173]2)
  170. 820 [152]4,[200](S$,B)[170]TT$(J);B1$:PG[178]PG[170]1:[142]
  171. 822 [143] POSITION HEADING
  172. 824 [141]838:PC(NC[170]1)[178]PW[170]3:CW[178]PC(2)[171]2[171]PC(1):[139]PC(1)[177]1[167]828
  173. 826 [152]4,[200](HC$(1),CW);:[137]830
  174. 828 [152]4,[200](S$,PC(1)[171]1)[170][200](HC$(1),CW);
  175. 830 [129]J[178]2[164]NC:M[178]PC(J)[171][195]([200](HC$(J[171]1),PC(J)[171]2[171]PC(J[171]1)))[171]PC(J[171]1)
  176. 832 [152]4,[200](S$,M)[170][200](HC$(J),PC(J[170]1)[171]2[171]PC(J));
  177. 834 [130]J:[152]4,B1$:[141]838:PG[178]PG[170]3:[142]
  178. 836 [143] PRINT DASHED LINE
  179. 838 [129]J[178]1[164]PW:[152]4,"-";:[130]J:[152]4,B1$:[142]
  180. 840 [143] PRINT FILE DATA
  181. 842 F1[178][197](ML$(1,1)):F2[178][197](ML$(1,2)):F3[178][197](ML$(1,3)):CW[178]PC(2)[171]2[171]PC(1)
  182. 844 [139]PC(1)[177]1[167]850
  183. 846 [152]4,[200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW);
  184. 848 [137]854
  185. 850 [152]4,[200](S$,PC(1)[171]1);
  186. 852 [152]4,[200](REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW);
  187. 854 [129]J[178]2[164]NC:CW[178]PC(J)[171]2[171]PC(J[171]1)
  188. 856 F1[178][197](ML$(J[171]1,1)):F2[178][197](ML$(J[171]1,2)):F3[178][197](ML$(J[171]1,3))
  189. 858 M[178][195]([200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3),CW))
  190. 860 M[178]PC(J)[171]M[171]PC(J[171]1):CW[178]PC(J[170]1)[171]2[171]PC(J)
  191. 862 [152]4,[200](S$,M);
  192. 864 F1[178][197](ML$(J,1)):F2[178][197](ML$(J,2)):F3[178][197](ML$(J,3))
  193. 866 [152]4,[200](REC$(K%(I),F1)[170]B$[170]REC$(K%(I),F2)[170]B$[170]REC$(K%(I),F3,CW);
  194. 868 [130]J:[152]4,B1$:PG[178]PG[170]1
  195. 870 [139]PG[178]60[167][129]J[178]1[164]6:[152]4,B1$:[130]J:PG[178]0:[141]824
  196. 872 [142]
  197. 874 [143] DISK ERROR CHECK
  198. 876 [132]15,EN,EM$,ET,ES:[139](EN[179]20)[176](EN[178]62)[167]ET[178]0:[142]
  199. 878 [153]" DISK ERRORWAIT"EN"CMD, "EM$","ET"CMD,"ES
  200. 880 [153]" PRESS ANY KEYWAIT TO RETURN TO MENU"
  201. 882 [161]A$:[139]A$[178]""[167]882
  202. 884 ET[178]8:[160]5:[160]15:[142]
  203. 886 [143] ADD LAST COLUMN
  204. 888 [139]Z[179][177]1[167][142]
  205. 889 A0[178]A0[170][197](REC$(K%(I),[197](ML$(NC,1)))):[142]
  206. 890 [139]Z[179][177]1[167][152]4,B1$:[137]538
  207. 892 [152]4,[200](S$,PC(NC)[171]1);
  208. 894 [129]I[178]1[164]PW[171]PC(NC)[170]1:[152]4,"-";:[130]I:[152]4,B1$
  209. 896 [152]4,[200](S$,PC(NC)[171]9)[170]"TOTAL= "[170][196](A0)
  210. 898 [152]4,B1$:[137]538
  211.